<?php
// tabele Blog
define('BLCATEGO','blog_category');
define('BLCATELA','blog_category_lang');
define('BLOWPISY','blog_wpisy');
define('BLOWPILA','blog_wpisy_lang');
define('BLOZDJEC','blog_wpisy_photos');
define('BLSETTIN','blog_settings');
	
	
/**
 * 
 * @author kowal.sylwester
 * sposob instalacji w tpl: 
 * {assign var=separ value=';'}
 * {assign var='komID' value=$wpisy[id].blwID}
 * {dispatcher->handleEvent v=Komentarze,index,Blog$separ$komID}
 * 		
 */
include_once 'KomentarzeModel.php';

class KomentarzeController extends KomentarzeModel {
	
	protected $kmTematID; // kategoria np. Blog
	protected $kmWpisID; // dotyczy np. komentarze dotyczace wpisu bloga
	protected $kmPageID; // strona na ktorej sa zainstalowane komentarze
	protected $kmcID;
	protected $db;
	
	public function __construct($forObject=null){
		global $config,$parameters;
		
		$nazwa_bazy__ = str_replace('www.','',$_SERVER['HTTP_HOST']).".db";
		tools::_add_folder($parameters['komentarze']['host']);
		// przygotowanie parametrów do zalozenia bazy
		$parametryBazyKomentarzy = array('drivers'=>array('driver'=>'sqlite'),
							  'sqlite'=>array('host'=>$parameters['komentarze']['host'],
											  'database'=>$nazwa_bazy__ ));
		$this->db = config::getDB($parametryBazyKomentarzy);
		
		$parameters['sqlite']['host'] = $parameters['komentarze']['host'];
		$parameters['drivers']['dbinstall'] = $parameters['komentarze']['dbinstall'];
		config::_instal_database($parameters['drivers']['driver'],$this->db);	

		KomentarzeModel::uprawnienia();
	}
	
	public function indexAction($forObject=null){
		 $this->wczytajParamatry($forObject);
		 
		 $this->kmcID = $this->pobierzNumerKomentowanegoObiektu();
		 tools::_assign("kmcID",$this->kmcID);
		 tools::_assign("komentarze",$this->pobierzListeKomentarzy());
		 tools::_display("Komentarze/lista_komentarzy.tpl");
		 tools::_display("Komentarze/dodaj_komentarz.tpl");
	}
	
	private function wczytajParamatry($forObject){
		global $config;
		$vars = explode(';',$forObject);
		$this->kmTematID = $vars[0];
		$this->kmWpisID = $vars[1];
		$this->kmPageID = $config->page;
	}
	
	public function zapiszNowyKomentarzAction(){
		global $config, $parameters;
		$this->zapiszNowyKomentarz();
		$this->status = (tools::__wiadomosc("Administrator",$parameters['admin']['mail'],$parameters['admin']['mail'],"Dodano nowy komentarz ".str_replace('www.','',$_SERVER['HTTP_HOST']),$_SERVER['HTTP_HOST'].$config->urlRE,"txt",false)) ? "ok" : "error";	
		
		tools::_redirect($config->urlRE,null,0,'php');	
	}

	
	public function usunWpisKomentarzaAction($params=null){		
		global $config, $objSession;
		$vars = explode('x',$params);
		if ( !$objSession->IsLoggedIn()  && $objSession->GetUserData("stanowisko") == 'a'){	
			tools::_redirect('zaloguj_sie.html'); return;
		}
	
		$this->usunWpisKomentarza($vars[0],$vars[1]);
		tools::_redirect($config->page.",,wyswietlWpisy,{$vars[1]}.html",null,0,'php');	
	}
}